home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1993 July / InfoMagic USENET CD-ROM July 1993.ISO / sources / x / volume9 / xmon / patch1 < prev    next >
Encoding:
Internet Message Format  |  1990-09-11  |  6.7 KB

  1. Path: uunet!decwrl!sun-barr!newstop!sun!otc.otca.oz.au
  2. From: gregm@otc.otca.oz.au (Greg McFarlane)
  3. Newsgroups: comp.sources.x
  4. Subject: v09i030: Xmon - X Protocol Monitor, Patch1, Part01/01
  5. Message-ID: <142276@sun.Eng.Sun.COM>
  6. Date: 12 Sep 90 08:29:21 GMT
  7. References: <comp-sources-x:xmon@uunet.UU.NET>
  8. Sender: news@sun.Eng.Sun.COM
  9. Lines: 231
  10. Approved: argv@sun.com
  11.  
  12. Submitted-by: Greg McFarlane <gregm@otc.otca.oz.au>
  13. Posting-number: Volume 9, Issue 30
  14. Archive-name: xmon/patch1
  15. Patch-To: xmon: Volume 9, Issue 15-19
  16.  
  17. xmon patch 1
  18.  
  19. This patch fixes the following problems:
  20.  
  21. 1. Long lines in the Imakefile were folded by the news software.
  22. 2. It should now compile on SYSV. You'll need to use -DSYSV.
  23. 3. It should now compile on machines that allow more than 128 open files.
  24.  
  25. ---- Cut Here and unpack ----
  26. #!/bin/sh
  27. # This is xmon, a shell archive (shar 3.32)
  28. # made 09/10/1990 07:43 UTC by gregm@otc.otca.oz.au
  29. # Source directory /u/projects/multi/xmux/xscope.based
  30. #
  31. # existing files will NOT be overwritten
  32. #
  33. # This shar contains:
  34. # length  mode       name
  35. # ------ ---------- ------------------------------------------
  36. #   4505 -rw-rw-r-- xmon.patch1
  37. #
  38. if touch 2>&1 | fgrep 'amc' > /dev/null
  39.  then TOUCH=touch
  40.  else TOUCH=true
  41. fi
  42. # ============= xmon.patch1 ==============
  43. if test X"$1" != X"-c" -a -f 'xmon.patch1'; then
  44.     echo "File already exists: skipping 'xmon.patch1'"
  45. else
  46. echo "x - extracting xmon.patch1 (Text)"
  47. sed 's/^X//' << 'SHAR_EOF' > xmon.patch1 &&
  48. Xxmon patch 1
  49. X
  50. XThis patch fixes the following problems:
  51. X
  52. X1. Long lines in the Imakefile were folded by the news software.
  53. X2. It should now compile on SYSV. You'll need to use -DSYSV.
  54. X3. It should now compile on machines that allow more than 128 open files.
  55. X
  56. XIt makes patches to the following files:
  57. Xpatchlevel.h
  58. XImakefile
  59. Xmain.c
  60. Xselect_args.h
  61. X
  62. Xdiff -r -c patchlevel.h.old patchlevel.h
  63. X*** patchlevel.h.old    Mon Sep 10 14:22:02 1990
  64. X--- patchlevel.h    Mon Sep 10 15:33:48 1990
  65. X***************
  66. X*** 1 ****
  67. X! #define PATCHLEVEL 0
  68. X--- 1 ----
  69. X! #define PATCHLEVEL 1
  70. Xdiff -r -c Imakefile.old Imakefile
  71. X*** Imakefile.old    Mon Sep 10 14:20:22 1990
  72. X--- Imakefile    Mon Sep 10 14:33:37 1990
  73. X***************
  74. X*** 15,24 ****
  75. X  ComplexProgramTarget_1(xmond, $(LOCAL_LIBRARIES), )
  76. X  ComplexProgramTarget_2(xmonui, $(LOCAL_LIBRARIES), )
  77. X  
  78. X! SHARFILES = README xmon.man Imakefile Makefile $(SRCS1) $(SRCS2)
  79. X  $(INCLUDE_FILES)
  80. X  
  81. X  shar:
  82. X!     shar -n xmon -s "gregm@otc.otca.oz.au" -a -o xmon.shar -l 75 -x -c
  83. X  $(SHARFILES)
  84. X  
  85. X--- 15,24 ----
  86. X  ComplexProgramTarget_1(xmond, $(LOCAL_LIBRARIES), )
  87. X  ComplexProgramTarget_2(xmonui, $(LOCAL_LIBRARIES), )
  88. X  
  89. X! SHARFILES = README xmon.man Imakefile Makefile $(SRCS1) $(SRCS2) \
  90. X  $(INCLUDE_FILES)
  91. X  
  92. X  shar:
  93. X!     shar -n xmon -s "gregm@otc.otca.oz.au" -a -o xmon.shar -l 75 -x -c \
  94. X  $(SHARFILES)
  95. X  
  96. Xdiff -r -c main.c.old main.c
  97. X*** main.c.old    Mon Sep 10 14:21:24 1990
  98. X--- main.c    Mon Sep 10 15:30:57 1990
  99. X***************
  100. X*** 11,16 ****
  101. X--- 11,19 ----
  102. X  #include <sys/uio.h>           /* for struct iovec, used by socket.h */
  103. X  #include <sys/socket.h>        /* for AF_INET, SOCK_STREAM, ... */
  104. X  #include <sys/ioctl.h>         /* for FIONCLEX, FIONBIO, ... */
  105. X+ #ifdef SYSV
  106. X+ #include <sys/fcntl.h>
  107. X+ #endif
  108. X  #include <netinet/in.h>        /* struct sockaddr_in */
  109. X  #include <netdb.h>             /* struct servent * and struct hostent * */
  110. X  #include <errno.h>             /* for EINTR, EADDRINUSE, ... */
  111. X***************
  112. X*** 27,33 ****
  113. X  #define NUM_REQUESTS            /* 128 */ 256
  114. X  #define NUM_EVENTS                /* 40 */ 256
  115. X  
  116. X- 
  117. X  /* function prototypes: */
  118. X  /* main.c: */
  119. X  static void ScanArgs P((int argc , char **argv ));
  120. X--- 30,35 ----
  121. X***************
  122. X*** 57,62 ****
  123. X--- 59,68 ----
  124. X  static void SignalTSTP P((void ));
  125. X  static void SignalCONT P((void ));
  126. X  
  127. X+ #if (mskcnt>4)
  128. X+ static Bool ANYSET P((long *src));
  129. X+ #endif
  130. X+ 
  131. X  /* end function prototypes */
  132. X  
  133. X  Global Bool    ignore_bytes;
  134. X***************
  135. X*** 304,310 ****
  136. X--- 310,320 ----
  137. X          };
  138. X  
  139. X      /* a few more parameter settings */
  140. X+ #ifdef SYSV
  141. X+     fcntl(ConnectionSocket, F_SETFD, FD_CLOEXEC);
  142. X+ #else
  143. X      ioctl(ConnectionSocket, FIOCLEX, 0);
  144. X+ #endif
  145. X      ioctl(ConnectionSocket, FIONBIO, &ON);
  146. X  
  147. X      debug(4,(stderr, "Listening on FD %d\n", ConnectionSocket));
  148. X***************
  149. X*** 919,925 ****
  150. X--- 929,939 ----
  151. X              panic("Can't connect to Client");
  152. X          }
  153. X  
  154. X+ #ifdef SYSV
  155. X+     fcntl(ClientFD, F_SETFD, FD_CLOEXEC);
  156. X+ #else
  157. X      ioctl(ClientFD, FIOCLEX, 0);
  158. X+ #endif
  159. X      ioctl(ClientFD, FIONBIO, &ON);
  160. X      return(ClientFD);
  161. X  }
  162. X***************
  163. X*** 1064,1066 ****
  164. X--- 1078,1094 ----
  165. X      fprintf(stderr, "%s\n", s);
  166. X      exit(1);
  167. X  }
  168. X+ 
  169. X+ #if (mskcnt>4)
  170. X+ static Bool
  171. X+ ANYSET(src)
  172. X+ long src[];
  173. X+ {
  174. X+     int cri;
  175. X+ 
  176. X+     for (cri = 0; cri < mskcnt; cri++)
  177. X+         if (src[cri])
  178. X+             return 1;
  179. X+     return 0;
  180. X+ }
  181. X+ #endif
  182. Xdiff -r -c select_args.h.old select_args.h
  183. X*** select_args.h.old    Mon Sep 10 14:21:49 1990
  184. X--- select_args.h    Mon Sep 10 14:42:11 1990
  185. X***************
  186. X*** 96,111 ****
  187. X  #define MASKANDSETBITS(dst, b1, b2)  \
  188. X                { int cri;            \
  189. X              for (cri=0; cri<mskcnt; cri++)    \
  190. X!                   dst[cri] = (b1[cri] & b2[cri]) }
  191. X  #define ORBITS(dst, b1, b2)  \
  192. X                { int cri;            \
  193. X                for (cri=0; cri<mskcnt; cri++)    \
  194. X!                   dst[cri] = (b1[cri] | b2[cri]) }
  195. X  #define UNSETBITS(dst, b1) \
  196. X                { int cri;            \
  197. X                for (cri=0; cri<mskcnt; cri++)    \
  198. X                    dst[cri] &= ~b1[cri];  }
  199. X! #define ANYSET(src) panic("ANYSET not implemented")
  200. X  #endif
  201. X  
  202. X  #endif /* SELECT_H */
  203. X--- 96,111 ----
  204. X  #define MASKANDSETBITS(dst, b1, b2)  \
  205. X                { int cri;            \
  206. X              for (cri=0; cri<mskcnt; cri++)    \
  207. X!                   dst[cri] = (b1[cri] & b2[cri]); }
  208. X  #define ORBITS(dst, b1, b2)  \
  209. X                { int cri;            \
  210. X                for (cri=0; cri<mskcnt; cri++)    \
  211. X!                   dst[cri] = (b1[cri] | b2[cri]); }
  212. X  #define UNSETBITS(dst, b1) \
  213. X                { int cri;            \
  214. X                for (cri=0; cri<mskcnt; cri++)    \
  215. X                    dst[cri] &= ~b1[cri];  }
  216. X! /* ANYSET is a function defined in main.c */
  217. X  #endif
  218. X  
  219. X  #endif /* SELECT_H */
  220. SHAR_EOF
  221. $TOUCH -am 0910173890 xmon.patch1 &&
  222. chmod 0664 xmon.patch1 ||
  223. echo "restore of xmon.patch1 failed"
  224. set `wc -c xmon.patch1`;Wc_c=$1
  225. if test "$Wc_c" != "4505"; then
  226.     echo original size 4505, current size $Wc_c
  227. fi
  228. fi
  229. exit 0
  230.  
  231.                     Greg McFarlane
  232.                     |||| OTC ||
  233.  
  234.                 ACSnet:  gregm@otc.otca.oz.au
  235.                   UUCP:  {uunet,mcvax}!otc.otca.oz.au!gregm
  236.                  Snail:  GPO Box 7000, Sydney 2001, Australia
  237.                  Phone:  +61 2 287 4104    Fax: +61 2 287 4990
  238.  
  239. dan
  240. ----------------------------------------------------
  241. O'Reilly && Associates   argv@sun.com / argv@ora.com
  242. Opinions expressed reflect those of the author only.
  243.